#!/bin/bash

#killall com.gray.boxstream &

echo "开始执行脚本"

# 获取本机的IPv4地址，最大等待时间5秒
ipv4_address=$(curl -s --max-time 5 ip.sb -4)

# 获取本机的IPv6地址，最大等待时间5秒
ipv6_address=$(curl -s --max-time 5 ip.sb -6)

# 计算映射端口
mapped_port=$((10000 + ($(ifconfig wlan0 | grep 'inet ' | awk '{print $2}' | cut -d'.' -f4) - 2) * 5))

# 输出本机IPv4地址（如果有）
[ -n "$ipv4_address" ] && echo "本机IPv4地址: $ipv4_address"

# 输出本机IPv6地址（如果有）
[ -n "$ipv6_address" ] && echo "本机IPv6地址: $ipv6_address"

# 输出端口占用情况
echo "端口映射及占用情况: "
for i in 0 1 2 3 4 ; do 
    base_port=$((10000 + i))
    actual_port=$((mapped_port + i))
    
    # 检查端口占用情况
    process=$(netstat -tlnp 2>/dev/null | grep ":$base_port" | awk '{sub(/[0-9]+\//, "", $NF); print $NF; exit}')
    
    if [ -n "$process" ]; then
        echo "$base_port= $actual_port 被进程 $process 占用"
    else
        echo "$base_port= $actual_port 未被占用"
    fi
done

echo "脚本执行结束"
